iT邦幫忙

2025 iThome 鐵人賽

DAY 24
0
自我挑戰組

Leetcode 自學系列 第 24

自學Leetcode Day24

  • 分享至 

  • xImage
  •  

LeetCode 268.Missing Number
1.題目理解:給你一個長度為 n 的陣列 nums,裡面包含 0 到 n 的 n 個不同整數(缺少其中一個數),找出那個缺失的數字。
2.解題思路(數學公式(總和)):0..n 的和是 n*(n+1)/2,用這個總和減去陣列元素總和即為缺失數字。注意避免整數溢位(用 long 做暫存比較保險)。
3.範例:
輸入:nums = [3,0,1](n=3,數字範圍 0..3,缺少 2)
兩個方法都會回傳 2。
更多邊界:

  • nums = [0] → 回傳 1
  • nums = [1] → 回傳 0
  • 長度很大時(例如 n ≈ 10^5)兩種方法效率都很好。
    4.程式碼截圖:https://ithelp.ithome.com.tw/upload/images/20251008/20169241Yp2U3bcOki.png
    5.學習心得:這次用到的方法是數學公式(總和)的解法,我覺得蠻簡單的,只是在思考解題的過程中沒考慮到整數溢位這個問題,所以這一步比較困難,剩下都蠻簡單的。

上一篇
自學Leetcode Day23
下一篇
自學Leetcode Day25
系列文
Leetcode 自學30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言